package com.smedi.ismedi.inmail.core.domain.service;

import com.smedi.ismedi.inmail.core.domain.aggregatemodel.MessageInfo;
import com.smedi.ismedi.inmail.core.domain.aggregatemodel.MessageRecord;

import java.util.List;

/**
 * @author u
 */
public interface MessageDomainService {
    /**
     * 发送消息
     *
     * @param messageInfos
     * @param userIds
     * @return
     */
    List<MessageRecord> sendMessage(List<MessageInfo> messageInfos, List<Long> userIds);

    /**
     * 阅读消息
     *
     * @param messageIds
     * @return
     */
    List<MessageRecord> readMessages(List<Long> messageIds);

    /**
     * 查看消息
     *
     * @param messageId
     * @return
     */
    MessageRecord queryMessages(Long messageId);

    /**
     * 删除消息
     *
     * @param messageIds
     * @return
     */
    Boolean deleteMessages(List<Long> messageIds);
}
